package main

import (
	"fmt"
	"gm-consul/pkg/config"
	"gm-consul/pkg/consul"
	"gm-consul/pkg/log"
	"time"
)

func main() {
	// 读取配置文件
	config.InitConfig("config.yaml")
	config := config.GetConfig()

	interval := time.Second * time.Duration(config.SyncInterval)

	// 初始化配置文件
	consul.InitRules()

	// 定时同步consul kv到本地文件
	for {
		log.Debug("开始同步consul kv到本地文件")
		//开始时间
		startTime := time.Now()
		consul.SyncConsulKVToLocal(config)
		since := time.Since(startTime).Microseconds() / 1000
		log.Debug("同步consul kv到本地文件结束" + " 耗时：" + fmt.Sprintf("%d", since) + " 毫秒")
		time.Sleep(interval)
	}
}
